Nonvolatile semiconductor memory and read method

ABSTRACT

In a nonvolatile semiconductor memory in which multiple-value information is stored in one memory cell by setting a plurality of threshold values, data is successively read from word lines while continuously changing the word-line read level from a lowest level to a highest level, and the next bit line is selectively precharged in accordance with the data stored in latch means for storing read data.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This is a Continuation application of application Ser. No.10/357,477, filed Feb. 4, 2003, which is a Continuation of applicationSer. No. 10/066,701, filed Feb. 6, 2002 (now U.S. Pat. No. 6,556,499);which is a Continuation of Ser. No. 09/828,967, filed Apr. 10, 2001 (nowU.S. Pat. No. 6,385,085); which is a Continuation of Ser. No.09/497,212, filed Feb. 3, 2000 (now U.S. Pat. No. 6,222,763); which is aContinuation application of Ser. No. 08/994,995, filed Dec. 19, 1997(now U.S. Pat. No. 6,026,014), the entire disclosures of which arehereby incorporated by reference.

BACKGROUND OF THE INVENTION

[0002] The present invention relates to a technique, which isparticularly applicable to a read method for multiple-value informationin a semiconductor memory and, moreover, is effective for a nonvolatilesemiconductor memory. More particularly the invention is applicable to atechnique which may be effectively used for a nonvolatile memory(hereafter referred to as a flash memory) to electrically simultaneouslyerase a plurality of stored pieces of information.

[0003] A flash memory uses a nonvolatile memory cell having a controlgate and a floating gate as a memory cell. It is possible to constitutethe memory cell of one transistor. In the case of a write operation ofthe flash memory, as shown in FIG. 16, a state in which the thresholdvoltage is low (logic “0”) is set up by setting the drain region of anonvolatile memory cell at approx. 5 V (volt) and a word line connectedwith a control gate CG at approx. −11 V and, thereby, extractingelectric charges from a floating gate FG by means of a tunnel current.In the case of an erase operation, as shown in FIG. 17, a state in whichthe threshold voltage is high (logic “1”) is set up by setting a wellregion, drain region and source region at approximately 0V and thecontrol gate CG to a high voltage, such as 16V, thereby generating atunnel current, and injecting negative electric charges into thefloating gate CG. During the read operation, it is judged that the datastored in a memory cell through which current flows is “0” and a memorycell through which no current flows is “1” by setting the control gateat an intermediate voltage between a high threshold and a low thresholdand detecting whether current flows or not. Thereby, one-bit of data isstored in one memory cell.

[0004] A technique has been proposed, which is related to the so-calledmultiple-value memory, for storing data of two bits or more in onememory cell in order to increase the memory capacity. An inventionrelated to the multiple-value memory is disclosed in Japanese PatentApplication No. 14031/1995, etc.

[0005] Such a multiple-value memory stores information by controllingthe amount of electric charges to be injected into a floating gate,thereby stepwise changing thresholds to 1V, 2V, 3V, . . . , and makinginformation of a plurality of bits correspond to each threshold value.FIG. 18 shows a threshold value distribution state when storinginformation by dividing one memory cell into four threshold value states(this will be referred to as four-value state in this specification). Itis difficult to accurately control the threshold value of a memory cellto a predetermined value for a write operation, and therefore, as shownin FIG. 18, a normal distribution is established around each targetthreshold voltage. To read data, voltages corresponding to the valleysof the threshold value distributions are read, set as VRW1, VRW2, andVRW3, and applied to a control gate through a word line. In this case,the drain is set at a potential, such as 1V, and the source is set at apotential, such as 0V. The bit-line precharging method can be used forthe setting of the drain voltage.

[0006] Table 1 shows the results of reading data from memory cellsbelonging to the threshold value distributions A, B, C, and D by usingthe above read voltages VRW1, VRW2, and VRW3 (VRW1<VRW2<VRW3). Becausethe memory cell belonging to the threshold value distribution A has thehighest threshold value, no current flows even if any one of VRW1, VRW2,and VRW3 is applied. Therefore, the read result is “1”. In the case ofthe memory cell belonging to the threshold value distribution B, theread result is “1” because no current flows when VRW1 or VRW2 isapplied. However, when VRW3 is applied, the read result is “0” becausecurrent flows. In the case of the memory cell belonging to the thresholdvalue distribution C, the read result is “1” because no current flowswhen VRW1 is applied. However, when VRW2 or VRW3 is applied, the readresult is “0” because current flows. In the case of the memory cellbelonging to the threshold value distribution D, the read result isalways “0” in any case because current flows if any one of VRW1, VRW2,and VRW3 is applied. Though a case of a four-value memory has beendescribed above, the same holds theoretically for eight- andsixteen-value memories. TABLE 1 Memory A Memory B Memory C Memory D VRW31 0 0 0 VRW2 1 1 0 0 VRW1 1 1 1 0

SUMMARY OF THE INVENTION

[0007] In the case of a four-value memory, it is possible to storetwo-bit information because any one of four threshold values can be setin one memory cell. In the case of a conventional two-value memory forstoring one-bit of information in one memory, the read operation isperformed once because two threshold values are judged to obtain one-bitof information. In the case of a four-value memory, however, it isnecessary to perform the read operation three times by changing thepotentials of a word line in order to obtain two-bit information.Therefore, simply saying, a problem arises that the read time is threetimes larger than that of a two-value memory and the power consumptionfor the read operation also increases three times.

[0008] Moreover, in the case of a nonvolatile memory using a MOSFEThaving a floating gate as a memory cell, a phenomenon (hereafterreferred to as read disturb) occurs wherein a small amount of hotelectrons generated in the read operation are injected into the floatinggate when the read operation is repeated, and, thereby, the thresholdvalue is raised. Therefore, a drawback occurs in that the thresholdvalue fluctuation in a memory cell increases as the read frequencyincreases, exceeds the read level in the worst case and, resultingly,the stored data may be changed.

[0009] Moreover, as described above, it is necessary to apply theearthing potential Vss (0 V) to the source of a memory cell during theread operation. As shown in FIG. 19, a power supply line (ground line)GL for the purpose is extended from the external terminal (ground pin)GND of a chip to each memory cell MC in a memory array M-ARY. The powersupply line is generally constituted of a metal wiring layer made of,for example, aluminum. However, at a portion where the aluminum wiringis used for another signal line, such as a bit line, the earthingpotential may be applied to each memory cell MC through a diffusionlayer having a large resistance value. In this case, as shown in FIG.19, the ground line length differs between the memory cell closest tothe ground GND and the memory cell farthest from the ground GND. Forexample, the wiring of the diffusion layer has a resistance value ofhundreds of mΩ per μm and even a metal wiring has a resistance value ofapprox. 100 Ω. Therefore, a portion between the ground pin and thememory cell farthest from the ground pin GND has hundreds to thousandsof Ω. Therefore, when a current flows from a memory cell during a readoperation, the source potential rises and, thereby, the source potentialgreatly differs between the memory cell closest to the ground pin andthe memory cell farthest from the ground pin. If the read current is 3mA and the ground resistance differs by 100 Ω, a difference of 0.3 Voccurs in the source potential.

[0010] In the case of a memory cell, the drain current logarithmicallychanges nearby the threshold value as known from the characteristics ofa MOSFET. Therefore, when the source potential rises and the voltagebetween the gate and source lowers, the current decreases by one-tenthto one-hundredth. In this case, if the characteristics of memory cellsbelonging to the distributions B and D in FIG. 18 have thecharacteristics shown by b and d in FIG. 20, a sufficient amount ofcurrent can be ensured even if the source potential slightly rises whenapplying a voltage of 5 V to each gate because the memory cell D is in acompletely saturated region. However, because the memory cell B is onlyslightly saturated, it is found that the current is greatly decreaseddue to a slight rise of the source potential and, thereby, no data canbe read or erroneous data may be read.

[0011] It is an object of the present invention to provide amultiple-value storage nonvolatile semiconductor memory having a shortread time and a small power consumption.

[0012] It is another object of the present invention to provide amultiple-value storage nonvolatile semiconductor memory which is capableof minimizing the necessary read frequency and preventing stored datafrom easily changing.

[0013] It is still another object of the present invention to provide amultiple-value storage nonvolatile semiconductor memory which is capableof preventing the source potential from rising during a read operationand preventing a data read operation from failing or data from beingerroneously read.

[0014] The above and other objects and novel features of the presentinvention will become more apparent from the description provided inthis specification and the accompanying drawings.

[0015] The outline of a representative one of the embodiments disclosedin this application will be briefly described below.

[0016] That is, in the case of a nonvolatile semiconductor memory wheremultiple-value information is stored in one memory cell by setting aplurality of threshold values, data is successively read while changingthe word-line read level from a lower value to a higher one andselectively precharging a bit line for the next read operation inaccordance with the data stored in latching means for holding read data.

[0017] As understood by referring to Table 1, by changing the word-lineread level from a lower value to a higher one successively, “0” is readfrom a memory cell from which “0” has already been read even afterreading data from the memory cell by raising the read level. Therefore,the result is the same as the case when the read operation is notperformed. That is, it is possible to omit the precharging of the bitline. Moreover, because the current consumption can be reduced by theomission of the precharging, it is possible to reduce the currentflowing from a memory array to a ground line during the read operation.Thereby, it is possible to decrease the rise of the source potential ofa memory cell. Therefore, it is possible to prevent a data readoperation from failing or data from being erroneously read. Moreover,because the read frequency can be decreased by the omission ofprecharging, it is possible to suppress the threshold value fluctuationdue to a read disturb condition, that is, to suppress a change in thestored data. Furthermore, by the above read method, because all of theread data will become “0” before the memory cells connected to aselected word line are read when they have a low threshold value, it ispossible to interrupt the read operation by using all-“0” judging meansand, moreover, to reduce the current consumption and the data read time.

[0018] Furthermore, it is preferable to determine the correspondencebetween the threshold values of memory cells and the data stored in thememory cells so that the codes of the stored data are so arranged as tobe different only in one bit between adjacent threshold values.Specifically, in the case of a four-value memory, the threshold valuedistributions A, B, C, and D of FIG. 18 are made to correspond totwo-bit data values “11”, “10”, “00”, and “01”. Thus, there is anadvantage that, even if a read disturb condition occurs, the load of anerror correction circuit for correcting the read disturb condition canbe lightened and the circuit scale also can be decreased. For example,if the threshold value of a memory cell in the threshold valuedistribution B of FIG. 18 is shifted to the threshold value distributionC due to a disturb condition, only one bit has an error because theoriginal stored data “10” is erroneously read as “00” in the case of theabove correspondence. However, when the threshold value distributions A,B, C, and D of FIG. 18 are made to correspond to two-bit data values“11”, “10”, “01”, and “00”, if the threshold value of the memory cell isshifted from B to C, “10” is erroneously read as “01” and thereby, atwo-bit error occurs. To correct the two-bit error, however, the load ofthe error correction circuit and the circuit scale are greatlyincreased.

BRIEF DESCRIPTION OF THE DRAWINGS

[0019]FIG. 1 is a chart showing the outline of a data read method of amultiple-value flash memory of the present invention;

[0020] FIGS. 2(A) and 2(B) are schematic circuit diagrams showing amethod for transferring data stored by a sense latch to a data latchthrough a bit line;

[0021]FIG. 3 is a circuit diagram showing a specific example of a memoryarray;

[0022]FIG. 4 is a circuit diagram showing a specific example of a senselatch circuit and a specific example of a data latch circuit;

[0023]FIG. 5 is a timing chart showing the timings of a data readoperation of the multiple-value flash memory according to an embodimentof the present invention;

[0024]FIG. 6 is a logic circuit diagram showing an example of convertingtwo-bit write data into four-value data in the multiple-value flashmemory of the present invention;

[0025]FIG. 7 is a timing chart showing the data input timings during awrite operation of the multiple-value flash memory of the presentinvention;

[0026]FIG. 8 is a flow chart showing the write procedure of themultiple-value flash memory of the present invention;

[0027]FIG. 9 is a timing chart showing the signal timing during a datawrite operation;

[0028] FIGS. 10(A) to 10(D) are diagrams showing a layout structure anda sectional structure of a memory cell according to the presentinvention;

[0029] FIGS. 11(A) to 11 (D) are diagrams showing a layout structure anda sectional structure of another embodiment of the memory cell;

[0030] FIGS. 12(A) to 12(D) are diagrams showing a layout structure anda sectional structure of still another embodiment of the memory cell;

[0031] FIGS. 13(A) to 13(D) are diagrams showing a layout structure anda sectional structure of still another embodiment of the memory cell;

[0032]FIG. 14 is a block diagram showing the outline of the embodimentof a multiple-value flash memory of the present invention;

[0033]FIG. 15 is a block diagram showing a system to which amultiple-value flash memory of the present invention is applied;

[0034]FIG. 16 is a schematic diagram showing the structure of a memorycell used for the flash memory of the present invention and the voltagestate at the time of a data write operation;

[0035]FIG. 17 is a schematic diagram showing the voltage state of amemory cell used for the flash memory of the present invention at thetime of an erase operation;

[0036]FIG. 18 is a diagram showing memory-cell threshold valuedistributions for a four-value flash memory;

[0037]FIG. 19 is a diagram showing the layout of a ground line from aground pin to a memory cell in a flash memory;

[0038]FIG. 20 is a characteristic diagram showing the relation betweenthe gate-source voltage and the drain current of a MOSFET constituting amemory cell of a flash memory;

[0039]FIG. 21 is a flow chart showing the read procedure of themultiple-value flash memory of the present invention; and

[0040] FIGS. 22(A) to 22(C) are diagrams showing the change of data-linepotentials of the multiple-value flash memory of the present inventionat the time of write operation.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0041] An embodiment in which the present invention is applied to aflash memory capable of storing four values in one memory cell will bedescribed below with reference to the accompanying drawings.

[0042] First, the data read procedure for the flash memory of thisembodiment will be briefly described below with reference to FIG. 1. Inthe case of this embodiment, a memory array is constituted of two mats.A sense & latch circuit (hereafter referred to as a sense latch anddenoted by SL in FIG. 1) connected to a bit line BL in each mat toamplify and latch a read signal is provided between two mats, and latchcircuits for temporarily holding read data are provided outside themats, that is, on the opposite sides of each bit line BL. A latchcircuit is hereafter referred to as the data latch and is denoted by DLin FIG. 1. Moreover, the upper mat of the two mats is denoted by symbolU and the lower mat is denoted by symbol D to distinguish the upper matfrom the lower mat. Symbol WL denotes a word line and MC denotes amemory cell.

[0043] In the case of this embodiment, before starting a read operation,every bit line BL of the mat on the selected side (here, assume that amemory cell in the upper mat is selected) is precharged to a potentialsuch as of 1.0 V. The above precharging is performed by setting data,for which the input/output node of the selected mat side becomes level“1”, in the sense latch SL. The setting of data in the sense latch SL isperformed by earthing the node of the non-selected side to the groundthrough a MOSFET and making the input/output node of the sense-latchselected side high-level. The bit line of the non-selected side ishalf-precharged to a potential such as of 0.5 V, so that data isdetected by comparing the bit-line potential of the selected side withthat of the non-selected side.

[0044] Then, one of the word lines of the selected mat side is first setat the lowest read level VRW1 (=1.5 V). Then, data of one row is readfrom the memory cell connected to the word line. Thereby, the datavalues read to a corresponding sense latch SL from memory cells havingthe highest threshold value (the stored data is “11”), the secondhighest threshold value (the stored data is “10”), the third highestthreshold value (the stored data is “00”) become “1” and only the datavalue read to a corresponding sense latch SL from a memory cell havingthe lowest threshold voltage (the stored data is “01”) becomes “0” (stepS1).

[0045] In step 2, the data read to and stored in the sense latch SL istransferred to a data latch DLD through a bit line BL of thenon-selected side mat. Though the above data transfer will be describedlater, it is conceptually understood that the data transfer is performedby turning on transfer MOSFETs Qt1 and Qt2 provided between the bit lineBL and the sense latch SL and between the bit line BL and the data latchDL (DLU and DLD), respectively, as shown in FIG. 2. Moreover, in thiscase, data opposite to the above stored data appears on the input/outputnode of the non-selected mat side of the sense latch SL. Therefore, thedata transferred to and stored in the data latch DL becomes the dataobtained by inverting the data stored in the sense latch SL. When thedata transfer is completed, the potential of every bit line is loweredto the earthing potential (0 V) by turning on every discharge MOSFET(described later) provided on each bit line BL (this is hereafterreferred to as bit-line reset).

[0046] In step 3, the bit lines BL in the selected-side mat are firstprecharged by using the data stored in the sense latch SL. Thereby, bitlines connected to the sense latch holding data “0” are not prechargedand thereby, the power consumption can be reduced. After the prechargingis completed, the same word line set to the selection level in step 1 isset at the second read level VRW2 such as of 2.5 V to read data of onerow from the memory cell connected to the word line. Thereby, the datavalues read to the corresponding sense latch SL from the memory cellshaving the highest threshold value (the stored data is “11”) and thesecond highest threshold value (the stored data is “10”) become “1” andthe data values read to the corresponding sense latch SL from the memorycells having the third highest threshold value (the stored data is “00”)and the lowest threshold value (the stored data is “01”) become “0”.

[0047] In step 4, the data read to and stored in the sense latch SL istransferred to the data latch DLU through the bit line BL of theselected-side mat. This data transfer is also performed by turning onMOSFETs Qt1 and Qt2 provided between the bit line BL and the sense latchSL and between the bit line BL and the data latch DL, respectively. Inthis case, because the same data as the stored data appears on theinput/output node of the selected-side mat of the sense latch SL, thedata to be transferred to and stored in the data latch DLU becomes thesame data as the data stored in the sense latch SL differently from thecase of step 2. When the data transfer is completed, bit-lines are resetby turning on every discharge MOSFET (to be described later) provided oneach bit line.

[0048] In step 5 the bit lines BL in the selected-side mat are firstprecharged by using the data stored in the sense latch SL. After theprecharging is completed, the same word line set at the selection levelin step 1 is set at the third read level VRW3 such as of 3.5 V to readthe data of one row is read from the memory cell connected to the wordline. Thereby, only the data value read to the corresponding sense latchSL from the memory cell having the highest threshold value (the storeddata is “11”) becomes “1” and the data values read to the correspondingsense latch SL from the memory cells having the second highest thresholdvalue (the stored data is “11”), the third highest threshold value (thestored data is “10”), and the lowest threshold value (the stored data is“01”) become “0”.

[0049] In step 6, the exclusive or logical operation of the inverteddata read to and stored in the sense latch SL and the data (inverteddata of selected memory cell) stored in the data latch DLD of thenon-selected side is performed through the wired logical operation usingthe bit line BL. That is, in the case of this embodiment, as shown inFIG. 2(B), the stored data is output to the bit line BL by temporarilyturning on the MOSFET Qt2 for transfer of the sense latch SL side whileturning on a MOSFET Qe1 and turning off a MOSFET Qe2 which are connectedin series and provided between the bit line BL and the earthingconductor so as to bypass the transfer MOSFET provided between the bitline BL and the data latch DLD. Moreover, Qe2 is turned on/off inaccordance with the data stored in the data latch DLD. Then, in thiscase, because Qe2 is turned off when the data store in the data latchDLD is “0”, the bit line keeps the data, as it is output from the senselatch SL. However, when the data stored in the data latch DLD is “1”,Qe2 is tuned on and thereby, the level of the bit line BL is lowered tothe earthing potential.

[0050] By controlling the operations of the MOSFETs Qt1, Qt2, Qe1, andQe2 as described above, the logical operation results shown by the truthtable of FIG. 2(B) remain on the bit line BL. However, the logicaloperation results when the data stored in the sense latch SL is “0” andthe data stored in the data latch DLD is “1” are not shown in the truthtable. This is because a memory cell for which the read data firstbecomes “0” always has read data of “0” thereafter (since the readoperation is started with the lowest read word line level) andtherefore, the above case does not occur in which the data stored in thesense latch SL is “0” and the data stored in the data latch DLD is “1”at the non-selected side.

[0051] In step 7, by resetting the data latch DLD and then, turning onthe transfer MOSFET Qt2, the operation results on the bit line aretransferred to and stored in the data latch DLD. Then, the data(transferred to) stored in the data latch DLD is inverted and suppliedto an output circuit while the data stored in the data latch DLU at theselected side is supplied to the output circuit as it is and output toan external unit at a predetermined timing. As a result, stored datacorresponding to the threshold value of a memory cell which is subjectedto the read operation is output to an external unit.

[0052]FIG. 3 shows a specific example of a memory array 10 and itsperipheral circuits. The memory array 10 of this embodiment isconstituted of two mats, and a specific example of one (upper side) ofthe two memory mats is shown in FIG. 3. In each memory mat, as shown inFIG. 3, a plurality of memory arrays MCC comprising n memory cells(MOSFETs each having a floating gate) MC1 to MCn which are connected inparallel and arranged in the column direction and whose source and drainare connected in common are arranged in the row direction (direction ofword-line WL) and in the column direction (direction of bit line BL). Ineach memory array MCC, the drains of n memory cells MC1 to MCn areconnected to a common local drain line LDL and the sources are connectedto a common local source line LSL. The local drain line LDL isconstituted so that it can be connected to the bit line BL through aselection switch MOSFET Qs1 and the local source line LSL is constitutedso that it can be connected to an earthing point or a negative voltagethrough a selection switch MOSFET Qs2.

[0053] A word drive circuit W-DRIVER has driver circuits DR1 to DR4. Thedriver circuits DR1 to DR4 each have power supply terminals t1 and t2and are connected to their corresponding word lines WL11, WL1 n, WL21,and WL2 n. Erase voltage E, write protect voltage PP, read voltages VRW1to VRW3, write verify voltages VWW1to VWW3, erase verify voltage WEW,write voltage P, and earthing potential Vss are generated by the powersupply switching circuit shown in FIG. 14 and supplied to an addressdecoder X-DEC. The address decoder X-DEC selects the above suppliedvoltages and supplies them to the, power supply terminals t1 and t2 ofthe driver circuits DR1 to DR4. The write protect voltage PP, readvoltages VRW1 to VRW3, write verify voltages VWW1 to VWW3, and eraseverify voltage WEW are selectively supplied to the power supply terminalt1. Moreover, the write voltage P and earthing potential Vss areselectively supplied to the power supply terminal t2.

[0054] The memory array MCC and selection switch MOSFETs Qs1 and Qs2 areformed in the same well region WELL on a semiconductor substrate. Datacan be simultaneously erased for every word line by applying an erasevoltage E (=16V) to the word lines. When data is erased, the switchMOSFETs Qs1 and Qs2 of a block, including the erase word lines, areturned on, so that a voltage such as 0V is applied to a selected blockand the source and drain of a memory cell.

[0055] When data is written, a negative voltage, such as the writevoltage P (=−11V), is applied to a word line to which a memory cell tobe selected is connected, the bit lines BL corresponding to the memorycell to be selected is set at a potential such as 5V, the switch MOSFETQs1 on the local drain line LDL to which a selected memory cell isconnected is turned on, and a voltage of 5V is applied to the drain.However, the selection switch MOSFET Qs2 on the local source line LSL iskept off. Moreover, when data is read, voltages, such as the readvoltages VRW1 (=1.5 V), VRW2 (=2.5 V) and VRW3 (=3.5 V), are applied toa word line to which a memory cell to be selected is connected, the bitline BL corresponding to the memory cell to be selected is precharged toa potential such as 1 V, and the selection switch MOSFET Qs1 on thelocal drain line LDL to which a selected memory cell is connected isturned on. Moreover, in this case, the selection switch MOSFET Qs2 onthe local source line LSL is on and the earthing potential is applied.

[0056] A sense amplifier for detecting the level of a bit line at thetime of a read operation and for supplying a potential corresponding towrite data at the time of a write operation and a sense latch circuit SLcomprising a transfer MOSFET (Qt1) and a precharge MOSFET are connectedto one end (central side of the memory array) of the bit line BL. A datalatch circuit DLV, comprising a latch circuit capable of holding writedata and read data, a transfer MOSFET (Qt2) and additional circuits (Qe1and Qe2) used for an arithmetic operation, is connected to the other endof the bit line BL. The memory array of this embodiment is constitutedof two mats, and hence memory mats which are the same as the above arealso arranged on the opposite side of the sense-latch circuit SL, thatis, the lower side of FIG. 3. Therefore, each bit line BL in the memoryarray is connected to the other input/output terminal of thecorresponding sense latch circuit SL.

[0057] Moreover, in the above embodiment, a case has been described inwhich corresponding control MOSFETs (such as the transfer MOSFETs Qt1and Qt2) on all bit lines are constituted so as to be controlled foreach memory mat in accordance with a common control signal. Moreover, itis possible to lighten the load of the circuit for generating a controlsignal by dividing bit lines into two groups, i.e. a group of bit linesof odd-numbered columns and a group of bit lines of even-numberedcolumns, and controlling mutually corresponding control MOSFETs of thegroups in accordance with a common control signal.

[0058]FIG. 4 shows specific circuit examples of the sense latch circuitSL and the data latch circuit DLU. Because the circuits are arrangedsymmetrically with respect to the sense latch circuit, only one bit linein one memory mat is illustrated and only one memory array MCC among thememory arrays connected to bit lines is shown for the convenience ofillustration, actually, however, a plurality of memory arrays MCC areconnected.

[0059] As shown in FIG. 4, the sense latch circuit SL is provided with aflip-flop circuit FF1 in which input/output terminals of two CMOSinverters comprising a P-channel MOSFET and an N-channel MOSFET arecross-connected to each other. Moreover, a bit line BLu in one memorymat is connected to one input/output terminal Na of the sense latchcircuit SL through a data transfer MOSFET Qt1. Furthermore, a bit lineBLd in the other memory mat is connected to the other input/outputterminal Nb of the sense latch circuit SL through a data transfer MOSFETQt1′.

[0060] Furthermore, discharge MOSFETs Qd1 and Qd1′ are connected to theinput/output terminals Na and Nb of the sense latch circuit SL and adischarge MOSFET Qd2 is also connected to the other end of the bit lineBLu. Furthermore, precharge MOSFETs Qp1 and Qp2 are connected to eachbit line BLu. The MOSFET Qp1 is connected to a terminal to which a powersupply voltage Vcc is supplied through a MOSFET Qc1. The gate of theMOSFET Qc1 is connected to the input/output terminal Na of the flip-flopFF1 and is turned on/off in accordance with the data stored in theflip-flop FF1. When a PCU is set at a potential such as 1V+Vth(threshold voltage), a corresponding bit line is precharged to 1 V whenthe data stored in the FF1 is “1”. Moreover, in this case, a prechargeMOSFET Qp2′ (corresponding to Qp2) on the non-selected side isprecharged to 0.5 V because a gate control signal PRD (corresponding toPRU) is set at a potential such as 0.5V+Vth.

[0061] The input/output terminals Na and Nb of the sense latch circuitSL can be connected to a common input/output line CI/O whose other endis connected to a data switching circuit through a column switch MOSFET(Y gate) Qy. Moreover, the gate of an all—“0” judging MOSFET Qa isconnected to the input/output terminals Na and Nb of the sense latchcircuit SL. The source of the all—“0” judging MOSFET Qa is connected toan earthing point and the drain is connected to a common output line ICOto be previously precharged. When even one data value of the data valuesstored in the sense latch SL is “1”, the corresponding MOSFET Qa isturned on and the potential of the common output line ICO is extracted.Therefore, when the potential of the common output line ICO is at ahigh-level, it is possible to judge that all the data values stored inthe sense latch SL are “0”.

[0062] Moreover, the data latch circuit DLU is provided with a flip-flopcircuit FF2 in which input/output terminals of two CMOS inverterscomprising a P-channel MOSFET and an N-channel MOSFET arecross-connected to each other, similar to the sense latch circuit SL.Moreover, a bit line BLu in a memory mat is connected to oneinput/output terminal Nc of the data latch circuit DLU through a datatransfer MOSFET Qt2. Furthermore, a discharge MOSFET Qd3 is connected tothe input/output terminal Nc of the data latch circuit DLU, and MOSFETsQe1 and Qe2 turned on/off in accordance with a precharge signal DP_U andthe potential of the input/output terminal Nc are connected in seriesbetween the bit line BLu and the earthing point.

[0063] Furthermore, the input/output terminal Nc of the data latchcircuit DLU can be connected to a data switching circuit through aMOSFET Qg. Furthermore, though not shown in FIG. 4, a data latch circuitDLD comprising a flip-flop circuit and the like is also provided to theother end of a bit line BLd connected to the input/output terminal Nb ofthe sense latch circuit SL.

[0064]FIG. 21 shows a flow chart of a data read operation. When a readcommand is input in step 1 (ST1), the flash memory is brought to a readmode. In step 2 (ST2), a read address is input. The read address isdecoded by the address decoder and a word line is selected. In step 3(ST3), a read voltage VRW1 is applied to the selected word line, thedata lines in one memory mat (selected-side memory mat) having theselected word line are precharged by the precharge MOSFET Qp1, and allthe data lines are precharged to 1 V. All the data lines in the othermemory mat (non-selected-side memory mat) are precharged to 0.5 V by theprecharge MOSFET Qp2. In step 4 (ST4), the data read from the selectedword line is stored in the sense latch circuit SL. In step 5 (ST5), thedata stored in the sense latch circuit SL is transferred to and storedin the data latch circuit DLD. In step 6 (ST6), a read voltage VRW2 isapplied to the selected word line and all the data lines in theselected-side memory mat are precharged by the precharge MOSFET Qp1. Instep 4, however, the data line connected to the sense latch circuit SLstoring “0” data (threshold value lower than the read voltage VRW1) isnot precharged to 1 V because the MOSFET Qc1 is not turned on. That is,the only data line precharged to I V in step 6 is a data line connectedto the sense latch circuit SL storing “1” data (threshold value higherthan the read voltage VRW1) at the time of the data read operation instep 3. All the data lines in the non-selected side memory mat areprecharged to 0.5 V by the precharge MOSFET Qp2. The data read from theword line selected in step 7 (ST7) is stored in the sense latch circuitSL. The data stored in the sense latch circuit SL in step 8 (ST8) istransferred to and stored in the data latch circuit DLU. In step 9(ST9), a read voltage VRW3 is applied to the selected word line and allthe data lines in the selected-side memory mat are precharged by theprecharge MOSFET Qp1. In steps 4 and 7, however, the data linesconnected to the sense latch circuit SL storing “0” data (thresholdvalue lower than the read voltage VRW2) are not precharged to 1 Vbecause the MOSFET Qc1 is not turned on. That is, the only data lineprecharged to 1 V in step 9 is the data line connected to the senselatch circuit SL storing “1” data (threshold value higher than the readvoltage VRW2). All the data lines in the non-selected-side memory matare precharged to 0.5 V by the precharge MOSFET Qp2. In step 10 (ST10),the data read from the selected word line is stored in the sense latchcircuit SL. In step 11 (ST11), the exclusive or logical operation of thedata stored in the data latch circuit DLD in step 5 and the data storedin the sense latch circuit SL in step 10 is performed. In step 12(ST12), the operation result in step 10 is stored in the sense latchcircuit. In step 13 (ST13), the operation result stored in the senselatch circuit is transferred to and stored in the data register DLD. Instep 14 (ST14), the data stored in the data registers DLU and DLD areoutput from the external terminal I/O shown in FIG. 14.

[0065] When data lines are divided into a group of data lines of theodd-numbered columns and a group of data lines of the even-numberedcolumns to read the data, the precharge operation of the data lines ofodd-numbered columns is performed, and thereafter data is read andstored in the sense latch circuit connected to the data lines of theodd-numbered columns. Then, the precharge operation of the data lines ofthe even-numbered columns is performed, and thereafter data is read andstored in the sense latch circuit connected to the data lines of theeven-numbered columns.

[0066] In FIG. 21, step 3 (ST3) and step 4 (ST4) correspond to step 1(Step 1) of FIG. 1, step 5 (ST5) corresponds to step 2 (Step 2) of FIG.1, step 6 (ST6) and step 7 (ST7) correspond to step 3 (Step 3) of FIG.1, step 8 (ST8) corresponds to step 4 (Step 4) of FIG. 1, step 9 (ST9)and step 10 (ST10) correspond to step 5 (Step 5) of FIG. 1, step 11(ST11) and step 12 (ST12) correspond to step 6 (Step 6) of FIG. 1, step13 (ST13) corresponds to step 7 (Step 7) of FIG. 1, and step 14 (ST14)corresponds to step 8 (Step 8) of FIG. 1.

[0067]FIG. 22(a) is a diagram showing the change of potentials of datalines in the selected-side memory mat during the data read operation. InFIG. 22(b), for easy understanding, to a word line WL, only a memorycell a belonging to a threshold value distribution A, a memory cell bbelonging to a threshold value distribution B, a memory cell c belongingto a threshold value distribution C, and a memory cell d belonging to athreshold value distribution D. The memory cells a, b, c, and d areconnected to their corresponding data lines BL0 to BL3. When the readvoltage VRW1 is applied to the word line WL, the data lines BL0 to BL3are all precharged to 1 V. Because the memory cell a is tuned on, onlythe data line BL0 becomes low-level. Then, when the read voltage VRW2 Isapplied to the word line WL, the data lines BL1 to BL3 are precharged to1 V though the data line BL0 remains at the low level. Because thememory cell b is turned on, the data line BL1 becomes low-level.Moreover, when the read voltage VRW3 is applied to the word line WL, thedata lines BL2 and BL3 are precharged to 1 V though the data lines BL0and BL1 remain at the low level. Because the memory cell c is turned on,the data line BL2 becomes low-level. Thus, a data line from which “0”data is once read is not precharged even if the precharge operation isexecuted.

[0068]FIG. 5 shows the timings when data is read. In FIG. 5, symbol T1denotes the first-time data reading period, T2 denotes the second-timedata reading period, and T3 denotes the third-time data reading period.In each reading period, the read operation is performed in accordancewith almost the same procedure. Each reading period is further dividedinto a word-line switching period t1, a bit-line precharging period t2,a discharging period t3 by a memory, an amplifying period t4 by a senselatch circuit SL, a period t5 for transferring data from a sense latchto a data latch, and a bit-line resetting period t6. The data transferdirection in the second-time data reading period is opposite to the datatransfer direction in the first-time data reading period. Moreover, inthe third-time reading period T3, an operating period t4′ is insertedbetween the amplifying period t4 and the data transfer period and datatransfer is slightly different from the cases of the first- andsecond-time reading periods in that the third read data value in thesense latch SL and the first and second read data values stored in thedata latches DLU and DLD are transferred to a buffer circuit.

[0069] Moreover, in FIG. 5, symbol W.L. denotes the potential of aselected word line, B.L. denotes the potential of a bit line, PCUdenotes a gate control signal of the precharge MOSFET Qp1, PCD denotes agate control signal of the precharge MOSFET Qp1 of the opposite-sidemat, n(SU) and n(SD) denote potentials of input/output nodes Na and Nbof the sense latch SL, TRU/D denotes a gate control signal of thetransfer MOSFET Qt2, TRU/D denotes a gate control signal of the transferMOSFET Qt2, n(DUS) denotes the potential of an input node Nc of datalatch, SSi. and SDi denote control signals of the selection switches Qs1and Qs2, and DPU denotes a gate control signal of the MOSFET Qe1 on thedata latch DLU side.

[0070] When the read voltage VRW1 (1.5 V) is applied to the word line WLand the voltage of 1V+Vth is applied to the gate of the precharge MOSFETQP1 in the selected-side memory mat during the WL switching operation, adata line BL(S) is recharged to 1 V. When a high-level signal RSAU isapplied to the gate of the MOSFET Qd1 assuming that “1” data is storedin the sense latch circuit, the potential of the input/output node Na ofthe sense latch circuit is set at the low level. In the memory dischargeoperation, when the potential of the input/output node Nb of the sensehatch circuit is set at the low level, the potential of the input/outputnode Nb of the sense latch circuit becomes high-level. When the voltageof 0.5V+Vth is applied to the gate of the precharge MOSFET QP2 in thenon-selected-side memory mat, a data line BL(R) is precharged to 0.5 V.It is also possible to precharge a data line in the non-selected-sidememory mat during the WL switching operation. Because the thresholdvalue of a memory cell connected to a selected word line WL is lowerthan the read voltage VRW1, the potential of the data line BL (S) isgradually lowered from the precharge level of 1 V when high-levelsignals SDi and SSi are applied to the gates of the switch MOSFETs Qs1and Qs2. In the amplifying operation, high-level signals TRU and TRD areapplied to the gates of transfer MOSFETs Qt1 and Qt1′ in order to turnon the transfer MOSFETs Qt1 and Qt1′. In this case, the sense hatchcircuit and the data line are connected to each other and the senselatch circuit amplifies the data on the data line. When a high-levelsignal DTU is applied to the gate of the transfer MOSFET Qt2 providedbetween the data register DLU and the data line BL (S) in the transferoperation, the data amplified by the sense latch circuit is transferredto and stored in the data register DLU. When high-level signals RSAU andRSAD are applied to the gates of the discharge MOSFETs Qd1 and Qd1′ inthe reset operation, the data lines BL(S) and BL(R) are reset to 0 V.During the arithmetic operation, the high-level signals TRU and TRD areapplied to the gates of the transfer MOSFETs Qt1 and Qt1′ in order toturn on the transfer MOSFETs Qt1 and Qt1′. The numerical values in theparentheses are data values stored in the data registers DLU and DLD.The operations shown in FIG. 1 are executed by feeding the high-levelsignal DPU to the gate of the additional circuit Qe1 and the operationresults are stored in the data register by feeding the high-level signalDTU to the gate of the transfer MOSFET Qt2.

[0071]FIG. 6 shows the structure of a data conversion circuit 20 forconverting the data to be stored, which is input from an external unitinto multiple-value data and the relation between the data conversioncircuit 20 and the data latch arrays 11, 12 a and 12 b in the memoryarray 10 is also shown in the figure. The data conversion circuit 20comprises an input buffer section 21 and a data conversion section 22,and 8-bit data can be input in parallel in pairs of two bits. FIG. 6shows a set of the input buffer section and the data conversion sectionin detail. A pair of data conversion circuits will be described below.

[0072] The input buffer section 21 in a pair of data conversion circuitscomprises two clock inverters INV1 and INV2 and latch circuits LT1 andLT2, and the data conversion section 22 comprises inverters INV11 andINV12 connected to the respective latch ciruits LT1 and LT2, threeNAND-gate circuits G1, G2, and G3 for reciving the outputs of the twoinverters INV11 and the INV12 and the outputs of the above latchcircuits LT1 and LT2 as their input signals, inverters INV21, INV22, andINV23 for reversing the outputs of these gate circuits, and transmissiongates TG1, TG2, and TG3 comprising MOSFETs connected to the inverters.The data conversion section 22 converts 2-bit input data into 3-bitdata, and outputs the data of 3 bits×4 as a hole.

[0073] Table 2 shows examples of data conversion performed by the dataconversion circuit 20. TABLE 2 Write data I/00 I/01 DLU[1] SL[1] DLD[1]01 0 1 0 1 0 00 0 0 1 0 0 10 1 0 0 0 1 11 1 1 0 0 0

[0074] As shown in Table 2, write data “01” is converted into three-bitdata “010”, write data “00” is converted into three-bit data “100”,write data “10” is converted into three-bit data “001”, and write data“11” is converted into three-bit data “000”. After the conversion, datais written only in a memory cell corresponding to the bit to “1” anddata is not written in a memory cell corresponding to the bit equivalentto “0”

[0075] Eight-bit write data first input to the data conversion circuit20 through external terminals I/00 and I/01 are converted into three-bitdata. The converted data are transferred to arid stored in the firstlatch circuits of data latch arrays 12 a (corresponding to the DLU) and12 b (corresponding to the DLD) arranged at both ends (top and bottom inFIG. 6) of the memory array 10 and a sense hatch array 11 (correspondingto the SL) arranged at the center of the memory array. Moreover, thewrite data supplied through external terminals I/02 and I/03 are alsoconverted into three-bit data, and transferred to and stored in thesecond latch circuits of the data latch arrays 12 a and 12 b arranged atboth ends (top and bottom in FIG. 6) of the memory array 10 and thesense latch circuit arranged at the center of the memory array.

[0076] Hereafter similarly, the write data supplied through externalterminals I/04 and I/05 are also converted into three-bit data, andtransferred to and stored in the third circuits of the data latch arrays12 a and 12 b and the sense latch array 11. The write data suppliedthrough external terminals I/06 and I/07 are also converted intothree-bit data, and transferred to and stored in the fourth circuits ofthe data latch arrays 12 a and 12 b and the sense latch array 11. Then,the input eight-bit write data are converted by the data conversioncircuit 20, and transferred to and stored in the fifth to eighth bits ofthe data latch circuits 12 a and 12 b and the sense latch circuit 11.

[0077] When the above operations are repeated and data are stored in alllatch circuits of the data latch arrays 12 a and 12 b and the senselatch array 11, a control circuit provided in a memory which will bedescribed later starts a write sequence and executes the writing of thedata stored in the sense latch array 11, the data stored in the senselatch array 12, and the data stored in the sense latch 11 b in thisorder. Moreover, the control circuit is constituted so as to performcontrol in accordance with a command input from an external CPU or thelike.

[0078]FIG. 7 shows the timings when data is written. As understood fromFIG. 7, when data is written, a write command is first input, and thenthe sector addresses add1 and add2 of the location where data is to bewritten are input and captured synchronously with a write enable signal/WE. In this case, the write command is distinguished from the sectoraddresses in accordance with a control signal (command/data enablesignal) /CDE input simultaneously with the write command. That is, it isjudged that the command or data is input when /CDE is at a low-level andit is judged that the addresses are input when /CDE is at a high-level.

[0079] After the addresses are input, first eight-bit write data D1 tobe stored in one sector (memory cell connected to one word line) isinput to and captured by the input buffer section 21 synchronously witha clock signal SC. Then, after the data conversion by the dataconversion circuit 20, the transmission gates TG1 to TG3 are turned onby a gate control signal YG and the write data values of 3 bits×4 aresuccessively transferred to and stored in the data latch arrays 12 a and12 b and the sense latch array 11. Thereafter, the write data values D2,D3, . . . , D528 input in units of eight bits are sequentiallydata-converted and stored in the sense latch array 11 and the data latcharrays 12 a and 12 b. When transfer of the write data for one sector iscompleted, a write start command is input from an external unit aridtaken in. By decoding the command and executing the write sequence, datafor one sector are simultaneously written.

[0080] In the memory array 10, the write operation of memory cellsconnected to bit lines in which the data stored in the sense latch array11 and the data latch arrays 12 a and 12 b are “1” is performed, inother words, write pulses are applied to the memory cells, and thethreshold value of each memory cell is shifted to one of thedistributions shown in FIG. 18. Thus, it is possible to write four-valuedata in one memory cell. FIG. 8. shows a write control procedure. It isassumed that the erase operation for bringing the threshold values ofeach memory cells to the highest state (state corresponding to data“11”) is performed before the data write operation is started.

[0081] The first step S1 in FIG. 8 (Transferring the write data tolatches 1 to 3.) is the transfer of data from the data conversioncircuit 20 to the sense hatch array 11 and the data latch arrays 12 aand 12 b, and the second step S2 and subsequent steps are the controlsequence to be started when the write command is input.

[0082] In this control sequence, a word line selected by decoding analready-captured write address is set at a potential such as —11V (stepS2). At the same time, the transfer MOSFET Qt1 on a bit line is turnedon, and a bit line in which the data is “1” in accordance with the datastored at this time in the sense latch array 11 is set at a potentialsuch as 5 V to perform the write operation. Then, the bit line isprecharged to a potential such as 1 V, and then the selected word lineis set at a write verify voltage VWW1 such as 1.0 V to perform theverify read operation. In this case, the data read from a memory cell inwhich the write operation is normally completed and stored in the senselatch array hi changes to “0”. Then, it is judged whether or not alldata stored in the sense hatch array 11 are “0” (step S3). Then, if evenone data of “1” remains, the write operation is performed again by usingthe data then stored in the sense latch array 11 (step S4).

[0083] When all data in the sense latch array 11 are determined to be“0” as a result of verification, step 5 is started to transfer the datastored in the data latch array 12 a to the sense latch array 11. Then,the selected word line is set at a potential such as −10.5 V which isslightly lower than the potential previously set (step S6). Then, thewrite operation is performed in accordance with the data stored in thesense latch array 11, and thereafter the selected word line is set at awrite verify voltage VWW2 such as 2.0 V and the verify read operation isperformed to judge whether or not all the data stored in the sense latcharray 11 are “0” (step S7). If even one data value of “1” remains, thewrite operation is performed again by using the data then stored in thesense latch array 11 (step S8).

[0084] When all the data in the sense latch array 11 are determined tobe “0” as a result of verification, step 9 is started to transfer thedata stored in the data latch array 12 b to the sense latch array 11.Then, the selected word line is set at a potential such as −10 V whichis even lower than the previous value (step S10). Then, the writeoperation is performed in accordance with the data stored in the senselatch array 11, and thereafter the selected word line is set at a verifyvoltage VWW3 such as 3.0 V and the verify read operation is performed tojudge whether or not all the data stored in the sense hatch array 11 are“0” (step S11). Then, if even one data of “1” remains, the writeoperation is performed again by using the data then stored in the senselatch array 11 (step S12).

[0085] The write operation is executed starting with a memory cellhaving a threshold value farthest from the erase level and ending with amemory cell having a threshold value nearest to the erase level in orderaccording to the above procedure. Thereby, it is possible to decreasethe frequency of the word-line disturbance of the memory cell having athreshold value nearest to the erase level and minimize the thresholdvalue fluctuation due to word-line disturbance. Moreover, in the case ofthe above embodiment, the absolute value of the write word line voltageis gradually lowered to −11 V, −10.5 V, and −10 V. Therefore, the amountof disturbances produced once also gradually decreases and, therefore,it is possible to further decrease the threshold value fluctuation.However, it is also possible to gradually decrease the write pulse widthinstead of gradually lowering the write voltage.

[0086]FIG. 9 shows the voltage change of signal lines in the memoryarray and the sense latch circuits when data is written (when data iswritten in memory cells in the upper memory mat).

[0087] Symbols shown in FIG. 9 correspond to those shown in FIG. 4.Symbol YGi denotes a gate control signal of the column switch Qy, NOLdenotes the potential of the input/output node Nb of a sense latch, BLUdenotes the potential of the selected-side bit line, BLD denotes thepotential of the non-selected-side bit-line, TRU and TRD denote gatecontrol signals of the transfer MOSFETs Qt1′ and Qt1, PCU denotes a gatecontrol signal of the precharge MOSFET (Qp1′) of the selected-side bitline, PRD denotes a gate control signal of the half-precharge MOSFET Qp2of a non-selected-side bit line, RSAU and RSAD denote gate controlsignals of the discharge MOSFETs Qd1 and Qd1′, and SLP and SL denote thepower supplies of a flip-flop FF1 of a sense latch.

[0088]FIG. 10(D) shows an example of the layout structure and FIG. 10(A)to FIG. 10(C) show the sectional structure of a memory cell of the aboveembodiment. In FIG. 10(A) to FIG. 10(C), symbol 50 denotes a diffusionlayer serving as the source and drain regions of a memory cell MC andselection switch MOSFETs Qs1 and a Qs2, 51 and 52 denote gate electrodesof selection switch MOSFETs Qs1 and Qs2 made of polysilicon or tungstensilicide, 53 denotes a control gate electrode (word line) of a MOSFETconstituting a memory cell, and 54 denotes a contact hole for connectingthe source regions of selection switch MOSFETs Qs1 and Qs2 with a bitline BL. FIG. 10(B) is a sectional view along the line X-X in FIG. 10(A)and FIG. 10(C) is a sectional view along the line Y-Y in FIG. 10(A). Asshown in FIG. 10(B), the bit line BL is provided above the control gateelectrode 53 in such a way as to perpendicularly intersect the electrode53. The bit line BL is constituted of, for example, an aluminum layer.As shown in FIG. 10(C), a floating gate electrode 55 made of polysiliconis formed below the control gate electrode 53.

[0089] FIGS. 11(D) to 13(D) show other embodiments of a memory array.FIG. 11(D) shows an example of the layout structure and sectionalstructure of a memory cell of a memory array called a NAND type. In theNAND-type memory array, as shown in FIG. 11(D), a plurality of memorycells MC are connected in series between selection switch MOSFETs Qs1and Qs2 connected to a bit line BL and a common source line CSL.Similarly to the embodiment of FIG. 10(A), symbol 50 in FIGS. 11(A) to11(C) denotes a diffusion layer serving as the source and drain regionsof the memory cells MC and the selection switch MOSFETs Qs1 and Qs2, 51and 52 denote the gate electrodes of the selection switch MOSFETs Qs1and Qs2 made of polysilicon or tungsten silicide, 53 denotes the controlgate electrode (word line) of the MOSFET constituting a memory cell MC,and 54 denotes contact holes for connecting the source regions of theselection switch MOSFETs Qs1 and Qs2 with the bit line BL. FIG. 11(B) isa sectional view along the line X-X in FIG. 11(A), and FIG. 11(C) is asectional view along the ling Y-Y in FIG. 11(A). As shown in FIG. 11(B),the bit line BL is provided above the control gate electrode 53 in sucha way as to perpendicularly intersect the electrode 53. The bit line BLis constituted of, for example, an aluminum layer. As shown in FIG.11(C), a floating gate 55 is formed below the memory-cell control gateelectrode 53. In the embodiment in FIG. 11(D), however, when each memorycell is turned on, a bit-line discharge current flows in the directionof arrangement of the control gate electrodes (horizontal direction inFIG. 10(A)). In the embodiment in FIG. 11(D), however, when each-memorycell is turned on, the current flows in the direction perpendicular tothe arrangement of the control gate electrode (vertical direction inFIG. 11(A)). Also in this embodiment, the floating-gate electrodes 55are made of polysilicon.

[0090]FIG. 12(D) shows the layout structure and FIGS. 12(A) to 12(C)show the sectional structure of a memory cell of a memory array called aNOR type. The NOR-type memory array, as shown in FIG. 12(D), is soconstituted that a—plurality of memory cells are connected in series,the source and drain terminals of adjacent memory cells are made toserve as common terminals, and the common terminals are connectedalternately to a bit line BL and a common source line CSL. In FIGS.12(A) to 12(C), symbol 50 a denotes a diffusion layer serving as a drainregion common to memory cells MC, 50 b denotes a diffusion layer servingas a source region common to the memory cells MC, 53 denotes a controlgate electrode (word line) of a memory cell MC made of polysilicon ortungsten silicide, and 54 denotes a contact hole for connecting thedrain region 50) common to the memory cells MC with the bit line BL. Inthe embodiment, the source region 50 b common to the memory cells MCalso serves as the common source line CSL.

[0091]FIG. 12(B) is a sectional view along the line X-X in FIG. 12(A),and FIG. 12(C) is a sectional view along the line Y-Y in FIG. 12(A). Asshown in FIG. 12(B), the bit line BL is provided above the control gateelectrode 53 in such a way as to perpendicularly intersect the electrode53. The bit line BL is constituted of, for example, an aluminum layer.As shown in FIG. 12(C), a floating gate 55 is formed below thememory-cell control gate 53. Also, in the embodiment, the floating gate55 is made of polysilicon.

[0092]FIG. 13(D) shows an example of the layout structure and FIGS.13(A) to 13(C) show the sectional structure of a memory cell of a memoryarray called a DINOR type. The DINOR-type memory array, as shown in FIG.13(D), is constituted by using the NOR type as the basic structure andadding a local bit line LBL to the basic structure. That is, a pluralityof memory cells are connected in series, the source and drain terminalsof adjacent memory cells are made to serve as common terminals, thecommon terminals are alternately connected to the local bit line LBL andcommon source line CSL, and a selection switch MOSFET Qs1 is connectedbetween the local bit line LBL and the bit line BL.

[0093] In FIG. 13(A), symbol 50 a denotes a diffusion layer serving asthe drain region common to memory cells MC, 50 b denotes a diffusionlayer serving as the source region common to the memory cells MC, 51denotes the gate electrode of the selection switch MOSFET Qs1, 53denotes the control gate electrode (word line) of a memory cell MC madeof tungsten silicide, and 54 denotes a contact hole for connecting thedrain region of the selection switch MOSFET Qs1 with the bit line BL. Inthe embodiment, the source region 50 b common to the memory cells MCalso serves as the common source line CSL.

[0094]FIG. 13(B) is a sectional view along the line X-X in FIG. 13(A)and FIG. 13(C) is a sectional view along the line Y-Y in FIG. 13(A). Asshown in FIG. 13(B), the local bit line LBL is provided above thecontrol gate electrode 53 in such a way as to perpendicularly intersectthe electrode 53, and the bit line BL is provided above the local bitline LBL almost in parallel with the line LBL. In the embodiment, thelocal bit line LBL is constituted of, for example, a polysilicon layerand the bit line BL is constituted of, for example, an aluminum layer.As shown in FIG. 13(C), a floating gate electrode 55 is formed-below thememory-cell control gate 53.

[0095]FIG. 14 shows an example of the overall structure of amultiple-value flash memory having a memory array 10, a data conversioncircuit 20, a control circuit, and memory peripheral circuits on thesame semiconductor chip.

[0096] Though the invention is not so restricted, the flash memory ofthis embodiment is provided with a command decoder 31 for decoding acommand given from an external CPU or the like and a control circuit(sequencer) 32 for successively generating control signals for eachcircuit in the memory in order to execute the processing correspondingto the command in accordance with the decoding results by the commanddecoder 31, and is so constituted as to automatically execute acorresponding processing by decoding the given command. The controlcircuit 32 comprises a ROM (read only memory) storing a series ofmicro-instructions necessary to execute a command (instruction) similarto, for example, the control section of a microprogram-type CPU, and isso constituted that a microprogram is started when the command decoder31 generates the first address of micro-instructions corresponding to acommand and outputs it to the control circuit 32.

[0097] In FIG. 14, circuit sections denoted by the same symbols as thosein FIG. 4 are circuits having the same functions. That is, symbol 10denotes a memory array constituted of two memory mats MAT-U and MAT-D,20 denotes a data conversion circuit for converting the write data inputfrom an external unit into four value data, 11 denotes a sense latcharray for storing the converted write data or read data, and 12 a and 12b denote data latch arrays.

[0098] The memory array 10 is provided with X-system address decoders 13a and 13 b correspondingly to the memory mats MAT-U and MAT-D and worddrive circuits 14 a and 14 b for driving one word line WL in each memorymat to a selection level in accordance with the decoding result by thedecoder 13 a or 13 b. In the memory array 10 of this embodiment, thoughthe invention is not so restricted, the word drive circuit is providedon both sides and at the center of each memory mat. Though not shown inFIG. 3 or 4, a Y-system address decoder circuit and a column switch tobe selectively turned on/off by the decoder to transfer the datasupplied from the data conversion circuit 20 to a corresponding senselatch are provided integrally with the sense latch array 11. In FIG. 9,the Y-system decoder circuit, column switch, and sense latch circuit areshown as one functional block Y-DEC&SL.

[0099] The multiple-value flash memory of the embodiment is—providedwith, in addition to the above circuits, a write/erase decision circuit33 for judging whether or not the write or erase operation is completedin accordance with the data supplied from the sense latch array 11 atthe time of the write or erase operation and for transmitting thedecision results to the control circuit 32 to complete a write or erasesequence, a clock generation circuit 34 for generating timing clocksignals necessary for internal operations and for supplying them to thecircuits in the memory, a status & test system circuit 35 provided withfunctions of reflecting the internal state of the memory, generating aready/busy signal R/B showing an external unit whether the memory can beaccessed from the external unit or not and outputting the signal, andtesting internal circuits, a main amplifier circuit 36 for amplifying asignal read from the memory array 10, a power-supply-system circuit 37,an input/output buffer circuit 38 for capturing an address signal, awrite data signal, and a command input from an external unit to supplythem to internal predetermined circuits and outputting a read datasignal to an external unit, a control signal input buffer & input/outputcontrol circuit 39 for capturing control signals input from externalunits to supply them to the control circuit 32 and other internalpredetermined circuits and controlling the input/output buffer circuit38, an address-control system circuit 40, and a redundant circuit 41 forreplacing a defective memory row with a spare memory row if there is anydefective bit in the memory array.

[0100] In the flash memory of this embodiment, an external terminal(pin) I/O is shared by an address signal, write data signal, and commandinput. Therefore, the input/output buffer circuit 38 separately capturesthese signals in accordance with control signals supplied from thecontrol-signal input buffer & input/output control circuit 39 andsupplies them to a predetermined internal circuit. Moreover, thepower-supply-system circuit 37 comprises a reference-voltage generationcircuit for generating a reference voltage for a substrate potential, aninternal power supply generation circuit including a charge pump forgenerating voltages such as a write voltage, erase voltage, readvoltage, and verify voltage, which are required in the chip from thepower supply voltage Vcc supplied from an external unit, a power-supplyswitching circuit for selecting a necessary voltage out of thesevoltages in accordance with the operating state of the memory, and apower supply control circuit for controlling these circuits.

[0101] The address-control-system circuit 40 comprises an addresscounter ACNT for capturing address signals input from an external unitand for counting them, an address generator AGEN for automaticallyupdating the Y-address when transferring data and for automaticallygenerating an X-address when erasing data, and a remedy system circuitfor comparing the input address with a defective address and forswitching a selected memory row or column when the input addresscoincides with the defective address.

[0102] A reset signal RES, chip selection signal CE, write controlsignal WE, output control signal OE, command enable signal CDE forindicating a command, data input, or address input, and system clocksignal SC are control signals to be input to the flash memory of thisembodiment from an external CPU or the like.

[0103] A general-purpose microcomputer LSI can be used as an externalunit for controlling the multiple-value flash memory of the aboveembodiment because the external unit need have only an addressgenerating function and a command generating function. FIG. 15 shows anexample of the structure of a system using the flash memory as itsmemory. This system is preferably used as the control system of aportable telephone set because data is kept in the system even if thepower supply is turned off. In FIG. 15, symbol 100 denotes a flashmemory, 110 denotes a one-chip microcomputer for mainly controlling thedata read, data write, and data erase operations of the flash memory100, 120 denotes an ECC (error correcting code) circuit for generatingan error correction code when data is written in the flash memory andfor checking read data to correct errors when data is read from theflash memory, 130 denotes a control table memory comprising an EEPROM tostore the data rewriting frequency of the flash memory 110 in the formof a table, 140 denotes a write buffer for temporarily storing the writedata supplied from a not illustrated external microprocessor through astandard bus 150, 160 denotes a local bus for connecting the one-chipmicrocomputer 110, memories 100 and 130, and ECC circuit 120 to oneanother, 170 denotes a bus interface circuit serving as an interface forsignals transferred between the local bus 160 and the standard bus 150.

[0104] As described above, in a nonvolatile semiconductor memoryaccording to this embodiment for storing multiple-value information inone memory cell by setting a plurality of threshold values, data issuccessively read while changing the word line read level from low tohigh level, and latch means for storing the read data is provided toselectively precharge the next bit line in accordance with the storeddata. Therefore, for a memory cell from which “0” is once read, “0” isread again from the memory cell even after the level is raised. Thus,the same result as that when the read operation is not performed isobtained and thereby, it is possible to omit precharging of a bit line.Moreover, because the current consumption can be reduced by omitting theprecharging, it is possible to reduce the current flowing out to theground line from the memory array in the read operation and, thereby,decrease the rise of the source potential of the memory cell and, thus,prevent the read operation from failing or data from being erroneouslyread. Moreover, since the read frequency can be decreased by omittingthe precharging, there is an advantage that threshold value fluctuationdue to a read disturbance, that is, an unwanted change of stored datacan be suppressed.

[0105] Furthermore, according to the above read method, because everyread data becomes “0” only for low threshold memory cells before data isread from the final memory cell, it is possible to interrupt the readoperation by using all-“0” decision means. Thus, there are advantagesthat the current consumption can be reduced and the data read time canbe decreased.

[0106] Furthermore, because thresholds and stored data values of memorycells are arranged so that the code of stored data is different only inone bit between adjacent thresholds, even if a read disturb conditionoccurs, there are advantages in that the load of an error correctioncircuit for correcting the read disturb condition is decreased and thecircuit scale is decreased.

[0107] Furthermore, in the above embodiment, the memory array isconstituted of two mats, a sense latch circuit capable of holding onebit out of three bit data, which is read when the bit line in each matis connected to an input/output terminal is provided between the twomats, a data latch circuit capable of holding another bit out of thethree bit data read by the sense latch is provided outside each mat, anddata is transferred between the data latch circuit and the sense latchcircuit through a bit line. Therefore, there is an advantage that it isunnecessary to provide a register for storing read data on the outputcircuit side.

[0108] The invention made by the present inventor has been specificallydescribed above in accordance with various embodiments. However, thepresent invention is not restricted to the embodiments. It is needlessto say that various modifications of the present invention are allowedas long as they do not depart from the gist of the present invention.For example, in the above embodiments, a memory cell has four levels ofthreshold value, so that four-value data can be stored in one memorycell. However, it is also possible to apply the present invention to anonvolatile memory capable of storing data of three or more bits bysetting the threshold value of a memory cell at one of 8 or 16 levels.

[0109] Moreover, in the above embodiments, the conversion shown in Table2 is performed as an example of methods for converting two-bit data intofour-value data. However, the conversion method used by the presentinvention is not restricted to the method shown in Table 2. Any methodcan be used as long as the method makes it possible to obtain data suchthat the position of a bit whose value is “1” is different. Moreover,the operation for data reverse conversion is not restricted to theoperation of the method of the embodiments (wired logic method using bitlines). Any method using an exclusive operation circuit or dataconversion circuit can be used as long as the method can restore two-bitdata.

[0110] Furthermore, the method of writing data into each memory cell isnot restricted to the method of performing an erase operation to raisethe threshold value and then lower the threshold value with a writepulse. It is also possible to use a method of raising the thresholdvalue with a write pulse. Furthermore, though the threshold value ischanged by writing data into a memory cell corresponding to the Senselatch circuit holding data “1” in the case of the embodiments, it isalso possible to change the threshold value by writing data into amemory cell corresponding to the sense latch circuit holding data “0”.

[0111] Furthermore, in the above embodiments, a memory array isconstituted of two mats. However, the present invention is notrestricted to such an arrangement. It is possible to apply the presentinvention to not only a memory array constituted of an even number ofmats, but also a memory array constituted of one mat. When a memoryarray is constituted of one mat, it is necessary to use a method ofseparating the data converted by a data conversion circuit into twoparts and transferring the two parts of data twice.

[0112] In the above description, the invention made by the presentinventor is applied to a batch-erasing flash memory in the utilizationfield which is the background of the present invention. However, thepresent invention is not restricted to the above. The present inventioncan be widely applied to a general nonvolatile memory using a MOSFEThaving a floating gate as a memory cell and, moreover, to asemiconductor device provided with a memory cell having a plurality ofthreshold values.

[0113] Advantages obtained from a representative one of the embodimentsdisclosed in this application will be described below.

[0114] That is, the present invention makes it possible to realize amultiple-value nonvolatile semiconductor memory in which the read timeand the current consumption are decreased, the necessary read frequencyis minimized, and unwanted change of stored data does not occur.

[0115] Moreover, the present invention makes it possible to realize amultiple-value nonvolatile semiconductor memory capable of preventingthe source potential f rpm rising in the read operation and ofpreventing data read operation from failing or data from beingerroneously read.

What is claimed is:
 1. A nonvolatile memory system comprising: acontroller; and a nonvolatile memory, wherein said controller is capableof issuing arbitrary operation commands to said nonvolatile memory,wherein said operation commands include a program command, wherein saidnonvolatile memory comprises a plurality of memory cells, each of whichhas a threshold voltage within one of voltage ranges, wherein, when saidnonvolatile memory receives said program command from said controller,said nonvolatile memory performs a first sequence and a second sequence,wherein, in said first sequence, said nonvolatile memory controlsselecting first ones of said plurality of memory cells, moving thresholdvoltages of said first ones into a first voltage range, checking whetherall of the threshold voltages of said first ones have been moved intosaid first voltage range or not, repeating moving and checking when oneor more threshold voltages of said first ones have not been moved intosaid first voltage range, and finishing said first sequence when all ofthe threshold voltages of said first ones have been moved into saidfirst voltage range, wherein, in said second sequence, said nonvolatilememory controls selecting second ones of said plurality of memory cells,moving threshold voltage of said second ones into a second voltagerange, checking whether all of the threshold voltages of said secondones have been moved into said second voltage range or not, repeatingmoving and checking when one or more threshold voltages of said secondones have not been moved into said second voltage range, and finishingsaid second sequence when all of the threshold voltages of said secondones have been moved into said second voltage range, and whereinthreshold voltages of both of said first ones of said memory cells andsaid second ones of said memory cells are included in a third voltagerange before performing said first sequence.
 2. A nonvolatile memorysystem according to claim 1, wherein, when said nonvolatile memoryreceives said program command from said controller, said nonvolatilememory further performs a third sequence, wherein, in said thirdsequence, said nonvolatile memory controls selecting third ones of saidplurality of memory cells, moving threshold voltages of said third onesinto a third voltage range, checking whether all of the thresholdvoltages of said third ones have been moved into said third voltagerange or not, repeating moving threshold voltages and checking thresholdvoltages when one or more threshold voltages of said third ones have notbeen moved into said third voltage range, and finishing said thirdsequence when all of threshold voltages of said third ones have beenmoved into said third voltage range.
 3. A nonvolatile memory systemaccording to claim 2, wherein said checking of threshold voltages is averify operation.
 4. A nonvolatile memory system according to claim 3,wherein said first voltage range has a first upper limit voltage and afirst lower limit voltage, wherein said second voltage range has asecond upper limit voltage and a second lower limit voltage, and whereinsaid third voltage range has a third lower limit voltage.
 5. Anonvolatile memory system according to claim 3, wherein said firstvoltage range, said second voltage range and said third voltage rangeare not overlapped with each other.
 6. A nonvolatile memory systemcomprising: a controller; and a nonvolatile memory, wherein saidcontroller is capable of issuing an arbitrary one of operation commandsto said nonvolatile memory, wherein said operation commands include aprogram command, wherein said nonvolatile memory comprises a pluralityof memory cells, each of which has a threshold voltage within one ofvoltage ranges, wherein, when said nonvolatile memory receives saidprogram command from said controller, said nonvolatile memory performs afirst sequence, a second sequence and a third sequence, wherein, in saidfirst sequence, said nonvolatile memory controls selecting first ones ofsaid plurality of memory cells, moving threshold voltages of said firstones into a first voltage range, and finishing said first sequence whenall of the threshold voltages of said first ones have been moved intosaid first voltage range, wherein, in said second sequence, saidnonvolatile memory controls selecting second ones of said plurality ofmemory cells, moving threshold voltage of said second ones into a secondvoltage range, checking whether all of the threshold voltages of saidsecond ones have been moved into said second voltage range or not,repeating moving and checking when one or more threshold voltages ofsaid second ones have not been moved into said second voltage range, andfinishing said second sequence when all of threshold voltages of saidsecond ones have been moved into said second voltage range, and wherein,in said third sequence, said nonvolatile memory controls selecting thirdones of said plurality of memory cells, moving threshold voltages ofsaid third ones into a third voltage range, checking whether all ofthreshold voltages of said third ones have been moved into said thirdvoltages range or not, repeating moving threshold voltages and checkingthreshold voltages when one or more threshold voltages of said thirdones have not been moved into said third voltage range, and finishingsaid third sequence when all of the threshold voltages of said thirdones have been moved into said third voltage range.
 7. A nonvolatilememory system according to claim 6, wherein said checking thresholdvoltages is a verify operation.
 8. A nonvolatile memory system accordingto claim 7, wherein said first voltage range has a first upper limitvoltage, wherein said second voltage range has a second upper limitvoltage and a second lower limit voltage, and wherein said third voltagerange has a third upper limit voltage and a third lower limit voltage.9. A nonvolatile memory system according to claim 8, wherein said firstvoltage range, said second voltage range and said third voltage rangeare not overlapped with each other.